<template>
  <!-- WebView 组件：加载合同预览链接 -->
  <web-view 
    :src="contractUrl" 
    @message="handleWebViewMessage" 
    @error="handleWebViewError"
  ></web-view>
</template>

<script>
export default {
  data() {
    return {
      contractUrl: '' // 接收传递过来的 e签宝合同链接
    };
  },
  onLoad(options) {
    // 1. 接收上一页传递的链接（需解码，避免特殊字符报错）
    this.contractUrl = decodeURIComponent(options.url);
    // 2. 可选：添加加载提示（避免用户等待时无反馈）
    uni.showLoading({ title: '加载合同中...' });
  },
  onReady() {
    // WebView 渲染完成后关闭加载提示
    uni.hideLoading();
  },
  methods: {
    // 处理 WebView 内部传递的消息（如合同页面的交互回调，可选）
    handleWebViewMessage(e) {
      // console.log('合同页面消息：', e.detail.data);
      // 若合同页面需要触发关闭、返回等操作，可在此处理
    },
    // 处理 WebView 加载失败（如链接无效、网络错误）
    handleWebViewError(err) {
      uni.hideLoading();
      uni.showToast({ 
        title: '合同加载失败，请检查链接或网络', 
        icon: 'none',
        duration: 2000 
      });
      console.error('WebView 加载错误：', err);
    }
  }
};
</script>

<style scoped>
/* 确保 WebView 占满屏幕（避免出现空白） */
uni-web-view {
  width: 100vw;
  height: 100vh;
}
</style>